package com.aaa.util;

import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;

import java.io.IOException;
import java.io.InputStream;

// 创建SqlsessionFactory
// 只能有一个

public class SqlSessionFactoryUtil {
    private static   SqlSessionFactory sqlSessionFactory = null;
     static {
        //  System.out.println("--------------");
        // 1. 核心的信息是MyBatis.xml  读取信息
        try {
            InputStream inputStream = Resources.getResourceAsStream("MyBatis.xml");
            // 第二个参数代表的是你自己指定的环境  pro
            // 如果第二个参数为“” 代表使用的是default的环境
            sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
            // sqlSessionFactory
            // sqlSession

        } catch (IOException e) {
            e.printStackTrace();
        }
    }


//    public static SqlSessionFactory getSqlSessionFactory(){
//        return sqlSessionFactory;
//    }
    public static  SqlSession getSession(){
         // 不会自动提交事务的
        // 如果想要自动提交事务 sqlSessionFactory.openSession(true);
        SqlSession session = sqlSessionFactory.openSession();
        return session;
    }

}
